﻿using System.Net;

namespace SDCloudSolution.SDCloud.WebApi.Exceptions
{
    /// <summary>
    /// Base sdcloud web api exception that used in this application.
    /// </summary>
    public class BaseSDCloudWebApiException : BaseWebApiException
    {
        /// <summary>
        /// Initializes a new instance of the <see cref="BaseSDCloudWebApiException"/> class.
        /// </summary>
        /// <param name="httpStatusCode">The HTTP status code.</param>
        /// <param name="message">The exception message.</param>
        /// <param name="parameterName">The name of parameter.</param>
        /// <param name="parameterValue">The parameter value.</param>
        public BaseSDCloudWebApiException(HttpStatusCode httpStatusCode, string message, string parameterName, string parameterValue) 
            : base(httpStatusCode, message, parameterName, parameterValue)
        {
        }

        /// <summary>
        /// Initializes a new instance of the <see cref="BaseSDCloudWebApiException"/> class.
        /// </summary>
        /// <param name="httpStatusCode">The HTTP status code.</param>
        /// <param name="message">The message.</param>
        /// <param name="parameterName">Name of the parameter.</param>
        public BaseSDCloudWebApiException(HttpStatusCode httpStatusCode, string message, string parameterName) 
            : base(httpStatusCode, message, parameterName)
        {
        }

        /// <summary>
        /// Initializes a new instance of the <see cref="BaseSDCloudWebApiException"/> class.
        /// </summary>
        /// <param name="httpStatusCode">The HTTP status code.</param>
        /// <param name="message">The message.</param>
        public BaseSDCloudWebApiException(HttpStatusCode httpStatusCode, string message) 
            : base(httpStatusCode, message)
        {
        }
    }
}